Intelligent networked information sharing

ABSTRACT

A networked information sharing model is described. The network described comprises a client-server model or a client only model. There exists a shared information database, a shared category database, a shared interest profile database and a shared client enhancement database, each of which is continually and dynamically updated. The shared category database contains categories of interests, within which are weighted and marked information units. Weights are arrived at by empirical use. Marks are maintained to distinguish where the information came from and to access information according to client source preference. The shared interest profile contains a set of profiles which clients are associated with. Useful client categories within profiles are offered when requested. A shared client enhancement list is maintained to identify and weight useful sources of information. A client specific database is maintained with client categories, preferred information sources, weights and weighted information access history. This database is used in conjunction with the shared databases to provide intelligent information sharing.

[0001] This application claims the benefit of prior provisionalapplication Ser. No. 60/006,863, filed on Nov. 16, 1995.

BACKGROUND

[0002] 1. Field of the Invention

[0003] This invention relates to computer systems and in particular toan intelligent means of acquiring, storing and sharing information.

[0004] 2. Description of Prior Art

[0005]

[0006] Servers on the Internet contain vast quantities of informationand are distributed around the globe. However, the vast majority ofinformation is of no use to a particular person. Finding information ofuse requires considerable knowledge as well as time and money. Mosaicoffers a graphical user interface to the Internet making access easier.Yet there are tens of thousands of servers to choose from and a largequantity of information to sift through once on an individual server.Furthermore, the server is usually slow due to the number of personslogged onto it and by the network traffic to communicate with it.

[0007] There are librarian servers on the Internet which scan thousandsof servers and catalogue the files on the servers. However, theselibrarian servers are slow due to the magnitude of the search and thelarge number of requesters. Further, one may find hundreds of potentialfiles on a given topic; accessing and reading the files to find usefulones takes and wastes considerable time. These servers may cover sometopics to a considerable degree and others sparsely.

[0008] Services such as CompuServe and America Online alleviatecongestion problems to a considerable degree by charging money. However,since the on-line service is charging per minute, one may not have thetime to sift through on-line services and bulletin boards to find whatone is looking for. The on-line service reduces the vast quantities ofuseless information on the Internet by offering a smaller set ofservices and bulletin boards found to be of interest to most people.However, the list of services is still very large and one is notconfident which if any will be of interest. Furthermore, excellentinformation may be available on the Internet or elsewhere which theparticular on-line service does not offer.

[0009] Bulletin boards may haphazardly provide specific information ofinterest. However, one must sift through answers which may or may not beof interest. Furthermore, one must find the bulletin board of interest;on the Internet there are a vast number which may or may not suit aperson.

[0010] Expert systems are available which sift through information byuse of algorithms, driven by rules and stored in a knowledge base.However, expert systems are expensive and time consuming to produce andmaintain. It would be impossible to cover the vast and evolvinginformation located on the Internet. Furthermore, the processing timerequired to run the expert systems would reduce the response time ofthese already slow servers considerably.

[0011] Another option is an heuristic database weighted by theusefulness response of clients. U.S. Pat. No. 5,301,314 to Gifford(1991) describes this method. The method consists of placing informationwhich was determined useful within a category higher on the tree ofoffered information within the category. This method falls short inseveral ways. First, one must sift through the categories. Second, oncein the category, one must sift through excellent answers until one findsthe excellent answer which matches the question; the answer may not evenbe on the database or may be located in a different category. Third,people differ. In a category of movies, as an example, an excellentchoice for an English Professor may be a poor choice to an engineer.Forth, what if one is not sure what categories may be of interest. Thereare millions on the Internet and thousands in subscriber services whichmay or may not suit a given person.

[0012] Another option is to provide trained personnel to search forinformation. This solution is expensive. Further, what is a goodinformation to the personnel may not be to the person requesting theinformation. If the question is highly specialized in a given field, thepersonnel may not have the technical knowledge to find the appropriateinformation. Finally, searching even by a trained person, takes aconsiderable amount of time.

[0013] An intelligent computer based method to share information isneeded which will reduce traffic on a networked system of computers andprocessing load on server machines. This method should offer the bestinformation for a particular persons needs, whether that information islocated locally on the server, is located on the Internet or is chosenfrom a set of responses on a bulletin board.

OBJECTS AND ADVANTAGES

[0014] It is, therefore, an object of the invention to provide a methodof sharing information between client computers which will decrease thetraffic on a network and decrease the load on a server machine.

[0015] It is another object of the invention for the server computer orthe client computer to choose information which will optimally bestserve the particular client's need.

[0016] It is another object of the invention to gather information fromthe Internet or other sources which will be of future value to clientsand keep a database of that information or pointers to that information.

[0017] It is another object of the invention to provide an effectivemethod of offering topics of interest to clients on an individual basis.

[0018] Still further objects and advantages will become apparent from aconsideration of the ensuing description and accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0019]FIG. 1 shows a network of computers consisting of clients andservers which will share information.

[0020]FIG. 2 shows a client interface to the interest categories.

[0021]FIG. 3 shows the structure of an information unit.

[0022]FIG. 4 shows the client database with an interest category and aninformation units accessed area

[0023]FIG. 5 shows the networked information sharing model.

[0024]FIG. 6 shows the recording of an information access by a client

[0025]FIG. 7 shows the upload and processing of client information to aserver.

[0026]FIG. 8 shows a method of calculating a client information weight.

[0027]FIG. 9 shows a method of weighting information used by clientsfrom a server.

[0028]FIG. 10 is a model showing the intelligent retrieval of requestedinformation.

[0029]FIG. 11 is a model for a database which can be searched in orposted to for information.

[0030]FIG. 12 shows the intelligent update of a client category list onthe client database.

[0031]FIG. 13 shows the intelligent update of the server interestprofile list and the intelligent offer of new categories.

[0032]FIG. 14 shows a networked information sharing model consistingonly of clients.

SUMMARY

[0033] A networked information sharing model is described comprising aclient-server model or a client only model where there exists a sharedinformation database, a shared category database, a shared interestprofile database and a shared client enhancement database, each of whichis continually and dynamically updated, the shared category databasecontaining categories of interests, within which are weighted and markedinformation units, weights arrived at by empirical use and marksmaintained to distinguish where the information came from and to accessinformation according to client source preference. The shared interestprofile contains a set of profiles which clients are associated withwhereby useful client categories within profiles are offered whenrequested, a shared client enhancement list maintained to identify andweight useful sources of information and a client specific databasemaintained with client categories, preferred information sources,weights and weighted information access history whereby this database isused in conjunction with the shared databases to provide intelligentinformation sharing.

PREFERRED EMBODIMENT—DESCRIPTION

[0034]FIG. 1 shows the preferred network structure of the invention.This consists of a set of clients who will share information over acommunications link 26. There is a client database 28 containing aclient index of interest categories and associated category choiceinformation. There is one or more servers which contain a complete setof interest categories in the form of a complete category database 18.The interest category client database 28 is a subset of the completecategory database 18. Server information database 20 consists ofinformation or pointers to information. Information units pointing toinformation in server database 20 are kept for each category stored incomplete category database 18. There is an interest profile database 32containing a full set of interest profiles. Each client on theinformation network is assigned to one or more interest profiles. Thereis a client database enhancement list 30. This list contains each clientand a number representing the amount of useful information from thisclient which was useful to other clients.

[0035] This invention offers a method of intelligently offering anddeleting categories from interest client database 28, intelligentlyoffering information within an interest category from informationdatabase 20 and judiciously gathering information for informationdatabase 20 for categories in complete category database 18. Thefollowing examples will clarify these activities.

[0036] As one example, client database 28 for client 22 may containbulletin board interest categories of baseball player statistics,baseball game statistics and articles on current baseball teams. Anothercategory may be offered to client 22 from server 24 of baseball stadiumstatistics. The decision to offer the category of baseball stadiumstatistics will be determined by artificial intelligence.

[0037] As another example, if a request for a prediction of what willoccur in the next Yankee game is posted to the baseball game statisticsinterest category by client 22 which is run by server 24, server 24 mayreturn a list of bulletin board answers prioritized based on whichanswer will most probably be best for client 22. The method by whichserver 24 prioritizes the answers for client 22 will occur without humanintervention.

[0038] As another example, server 24 may judiciously gather pointers offthe Internet of interesting articles on current baseball teams and storethe pointers in information database 20 for the current baseball teamscategory located in complete category database 18. Client 22A mayrequest three articles from the database. server 24 would offer what itthinks is the best two articles for client 22A. Again, the gathering ofinformation and the offering occurs without human intervention.

[0039]FIG. 2 shows a user interface for current interest categories 36and suggested interest categories 34. Each interest category is a nodeof an interest category tree. Child expanded node 38 shows node 3 withone level of children. If a client decides to get more specific than hisassigned category he can view below the category. Parent expanded node40 shows node 3 with two levels of parent nodes. If the client wouldlike to view the more general categories above his assigned category hecan view above his assigned category. As an example, node 3 may bebackgammon. The three children of node 3 may be rules of backgammon,great backgammon players and backgammon strategy. The parents ofbackgammon may be board games and the grandparent may be leisureactivities. The client may be assigned the backgammon node and maychoose to view what categories are above or below him.

[0040] The information database 20 of FIG. 1 is located on the server.It consists of information units, as shown in FIG. 3, containing aninformation access area 50 to access the information. The informationmay be located locally on the server or may be located remotely. Remotelocation can be anywhere outside of the given server. It contains aglobal information unit index 44 used by the client and the server toidentify an information unit. It contains usefulness weights 46 whichidentify the usefulness of the information unit, access counts 48 whichrecord the number of times the information unit has been accessed and aninformation access area 50 which is a method to get to the informationor a pointer to a method to get to the information. The client fillsthese areas as he uses the information unit. The server accumulatesclient values and combines them to produce server values which are thenstored in the information unit. There can be more than one count orweight since an information unit will have records of counts and weightsfor the given piece of information and the categories and server leadingto that piece of information.

[0041] Referring now to FIG. 4, the client database 28A is located onthe client. It contains an ordered list of client interest categories58. Information is kept on each category. Indexes of informationaccessed 60 reflects information units which have already been accessedfrom this category. The category utility weight 62 is based on use andsatisfaction with the use of the category. Category use count 64 is acount of the number of times this category has been used. Not preferredinformation client Ids 66 and preferred information client Ids 68reflect encrypted Ids of other clients whose information this client hasused. Information units accessed 80 for this category reflect allinformation accessed within the past arbitrary period of time (forexample the past month). These units are given to the server forpotential use by other clients. Profile numbers 81 associate this clientwith the interest profile database 32 of FIG. 1. Previously rejectedcategories 82 are maintained to be given to the server before requestingnew categories of interest to this client.

[0042] By use of these structures an intelligent information sharingsystem is built across a network. The interaction between thesestructures allows for the transfer of useful information to meet aparticular clients interests and needs.

PREFERRED EMBODIMENT—OPERATION

[0043] The networked information sharing model is shown in FIG. 5.Objects described in FIGS. 1, 2, 3 and 4 will be referenced here and insubsequent paragraphs. In step 84 the shared information database 20 ofFIG. 1 and the shared complete category database 18 of FIG. 1 arepopulated with information and cross references to that information. Instep 86 client interest categories 58 of FIG. 4, which together are oneprofile, are assigned to each client; this profile of categories ismatched to one or more generic profiles in shared interest profiledatabase 32 of FIG. 1. In step 88 clients are watched by the clientmachine; referring to FIG. 4, information on server destinations 78,information items 74 and categories chosen 76 are recorded on the clientdatabase 28A in the Information Units Accessed 80 table. In step 90information and destinations accessed by the client are recorded withusefulness weights 46 of FIG. 3 and access counts 48 of FIG. 3 withineach information unit on the server in shared complete category database18 of FIG. 1. In step 92 the clients interest category profileassignments in shared interest profile database 32 of FIG. 1 are updatedaccording to the current category profile information recorded in step88. The client requests specific pieces of information, server ordatabase destinations and new categories in step 94; with the sharedinterest profile database 32 of FIG. 1 updated in step 92 and theanalysis done in step 90, data is returned to the client.

[0044] Referring back to FIG. 1, the server information database 20 andthe complete category database 18 is initially populated by standardinformation collection. On-line services have category directories andinformation databases. Many books can be found with categorizeddirectories of on-line services. Thus, we begin with a good base ofinformation database 20 cross referenced through complete categorydatabase 18. The complete category database 18 contains leaf nodes andnon leaf nodes, each representing an interest category. Clients will beassigned to interest category nodes. Referring now to FIG. 4, thisinformation will be kept in the client database 28A as client interestcategories 58. Clients will also be assigned a set of profile numbers 81which will associate them with interest profiles located in the interestprofile database 32 of FIG. 1. Profiles and interest categories will beinitially assigned by use of an interest survey prepared by a marketingand/or psychology group. Subgroups within an interest category can beformed where interest in information within a category will differsubstantially between one client and another. Subsequent updates will bemade dynamically by the intelligence within the client and servercomputers as described below.

[0045] The client machine watches where the client goes to accessinformation and what information he accesses. Privacy is of courseimperative. Perhaps, the client can turn on or off the watch facility bypressing a button on the display. The client would also have anencrypted and private client ID. Perhaps, at the end of an informationsearch the client can press a share button to allow the sharing of theinformation with other clients.

[0046] A script is kept which when launched leads to the information.The computer keeps track of how often the information site and the nodesleading to the information site is accessed; it prompts the user at theend of the information for a usefulness weight from excellent to poor.The computer keeps track of how often each point leading to the finalinformation is accessed. The script leading to the information in theinformation access area 50 of FIG. 3, the access counts 48 of FIG. 3 andthe usefulness weights 46 of FIG. 3 are kept within the information unitstructure which is passed between client database 28A of FIG. 4 andserver complete category database 18 of FIG. 1. These information unitspoint to the information database 20 of FIG. 1 through the informationaccess area 50 of FIG. 3.

[0047]FIG. 6 details the process of recording information access by aclient. Let us call this client Client A. In step 96 client A accessesan information server, as an example the Hall of Malls server; in step98 the client computer increments the count of how often client A hasaccessed the Hall of Malls server. In step 100 the client selects acategory, as an example the Florida Mall; the computer increments thecount for Florida Mall for client A in step 102. Client A goes to TheUnusual Music Store subcategory in step 104; the computer increments thecount for The Unusual Music Store in step 106. In step 108 the clientchooses a resource, in this example a tape called The Nightfly; thecomputer increments the count for this resource, the Nightfly tape, instep 110. In step 112 the client rates each node in this access: theHall of Malls, the Florida Mall, the Unusual Music Store and TheNightfly. The client computer records this information in the usefulnessweights 46 of FIG. 3 and access counts 48 of FIG. 3 of the informationunit index 44 of FIG. 3.

[0048] If client A has a history of giving good information to otherclients, then the information unit is recorded by the server. FIG. 7details this method. In step 114 the client connects to the server. Instep 116 the server accesses the client usefulness index fromenhancement database 30. This index is an historic measurement of howuseful information offered by this client has been to other clients; itis based on the number of users accessing the information who weresatisfied with the information. In step 118 the server requestsinformation from the client which has a use count above a particularnumber and/or a rating above a particular number; the count and ratingnumber are lower for a high client usefulness index and higher for a lowclient usefulness index. In step 120 the client sends the server theinformation with counts and ratings. In step 122 the client records thisinformation as sent; subsequent uploads will only resend thisinformation if counts or ratings have changed substantially and willonly send the deltas of the information. In step 124 the server recordsthe information unit within an ordered weighted list.

[0049]FIG. 8 gives a method for weighting information received by aclient. It uses a rating index of 1, 2 or 3. This method is forinformation which has a count greater than or equal to one, as anexample the Hall of Malls destination information unit. In step 126 theinformation with a use count is received. If, in step 128, the rating is1 (the top rating) then in step 130, the weight is assigned two timesthe count. If, in step 132, the rating is 2 then in step 134 the weightis assigned 1.7 times the count. If, in step 136, the rating is 3 thenin step 138 the weight is assigned 1.5 times the count. If, in step 140,there is no rating then the weight is assigned 1.7 times the count. Instep 142 the weight is assigned whatever the current weight is times theclient data usefulness index. This method takes into account threefactors: the historic usefulness of the clients data, the number oftimes the data was reused and the rated satisfaction when using theinformation.

[0050] Referring back to FIG. 1, If the information is accessed througha category in complete category database 18, the information is sharedwith clients in this category. If the information was not accessedthrough a category it can be offered to clients with a similar interestprofile accessed from the interest profile database 32; if theinformation is not categorized and turns out to be useful to a number ofclients, a question can be asked of each client as to which category itbelongs in. If one or more categories consistently comes up, theinformation unit can be placed for access within a given category.Otherwise the information can be placed in a catch all generic category.

[0051]FIG. 9 gives a method for keeping a dynamic and a static utilitycount for a given piece of information received by a server from aclient. In step 144 the information is tried by a client. If, in step146, the information is rated as 7 or more on a 1 to 10 scale then instep 148 the new dynamic count is assigned the old current dynamic countplus the utility rating squared; the static count in step 150 islikewise updated. The static count gives total utility of this itemsince its inception. The dynamic utility count gives a current utilityweight. This is done by reducing the past utility weight with time, thusrequiring continual usefulness of the information. In step 154, if thedate is the first of the month, then in step 156 the dynamic countweight is reduced by a factor of 0.3, otherwise no action is taken 158.

[0052] The same type of method can be used to continually populate abulletin board containing baseball articles. Users would offerinteresting articles. The information stored in server informationdatabase 20 of FIG. 1 would contain a pointer to the article on theInternet or in the service provider database. An information unitpointing to the information in information database 20 of FIG. 1 wouldbe kept in the baseball articles category in complete category database18 of FIG. 1. Access counts 48 of FIG. 3 and usefulness weights 46 ofFIG. 3 of each article would be kept in the corresponding informationunits. The enhancement database 30 of FIG. 1 is kept up to date with theprivate user ID, the category if any and the information offered counts.

[0053] Referring back to FIG. 4, the client database 28A contains theclient interest categories 58. Beneath a given category, there is apreferred information client IDs 68 and a not preferred informationclient IDs 66 containing encrypted, private Ids of other clients whoseinformation was useful. From this list the server chooses articles tooffer by finding offered articles from clients who are on the preferredinformation client IDs 68. FIG. 10 demonstrates this method. In step 160the client requests information from a category. In step 162 the clientsends indexes of information already accessed 60 of FIG. 4. In step 164the client sends encrypted preferred information client IDs 68 of FIG. 4of historically preferred providers and those providers who were notpreferred information client IDs 66 of FIG. 4. If, in step 166, ifinformation is available from a preferred provider, if there is nohigher weighted information from a new provider in step 170, then instep 172 the preferred provider information is sent to the client. If,in step 170 there is higher weighted information from a new provider,if, in step 174 new provider information has been sent within the lastthree accesses, then in step 172 the preferred provider information issent to the client. If, in step 174, new information has not been sentwithin the last three accesses, then in step 168 the information fromthe new provider is sent to the client. This method offers informationfrom historically useful providers for this client. This methoddistinguishes between clients within a category. This becomesparticularly useful where there is a range of tastes within a category,for example with movies, magazines, restaurants and music. The methodalso provides for sampling new providers as seen in step 174.

[0054] Where there is a large database which is heavily used, theenhancement database 30 of FIG. 1 and the local preferred informationclient IDs 68 of FIG. 4 can be used effectively. As an example, theArchie server is a librarian for the Internet and can be searched forsources. By adding a bulletin board, users can post questions or searchfor them. Clients who answer the most posted questions with the leastaverage search time can be given more time slices on the Archie server.Thus, slow and or inexperienced Archie users do not waste time on theserver. Furthermore, they receive sources which may well be better thanif they had searched Archie. Further, rather than a huge list which mustbe transferred over the Internet, a potentially small list is returnedvia the bulletin board. Thus, the server load is reduced and users getquality information.

[0055]FIG. 11 gives a method for a bulletin board and database which canbe searched. If client A posts a request in step 176 and an answer isgiven back by client B in step 178 then if in step 180 Client A ratesthe information as 7 or more in utility then the client B answer countis incremented by the Client A utility rating squared in step 182. Ifclient B chooses not to post a question in step 176 then, in step 184,he is given a timeslice equal to the minimum timeslice unit times hissearch master multiplier. The search master multiplier is determined bythe current load on the server and client Bs client answer count. Instep 186 the search begins.

[0056] Referring now back to FIG. 1, the interest profile database 32 isdynamically updated according to the client interest categories 58 ofFIG. 4 and their associated category utility weight 62 of FIG. 4contained in the client database 28A of FIG. 4. Thus, a client which wasplaced in sports and music categories may become engrossed in anaccounting job requiring information about the economy and stocks; hemay, therefore, become associated to a different set of interest profilecategories in interest profile database 32.

[0057]FIG. 12 offers a method of dynamically updating client interestcategories 58 of FIG. 4. In step 176 information is used in an interestcategory. In step 178 the interest category count 64 of FIG. 4 isincremented by 1. If the user is exiting from the service provider instep 180, if in step 182 the user has been on the network a given numberof hours K (for example 40 hours) since last updating his interestcategory profile then in step 184 his interest category profile onclient database 28A of FIG. 4 is updated. For all categories which havenot been checked in K hours of on-line use, the interest category count64 of FIG. 4 is reduced by a factor of 0.3. In step 186, if the numberof interest categories is greater than a given constant J (for example20), categories are removed from the current interests category 36 ofFIG. 2 directory with an interest count less than a given number L (forexample 20 for a scale between 0 and 100) in step 188; perhaps removedcategories are placed in an unused interest category directory forsubsequent purging by the client. In step 190 the category weight changeBoolean 70 of FIG. 4 is set to TRUE. This value will be used by theserver to update the client on interest profile database 32 of FIG. 1.This method provides a dynamically updated client interest profile.

[0058] The profile directory is particularly useful in offering newcategories of interest. By noting categories not on Client A but oftenused by other clients within the interest profile, offers can be made toclient A of new categories he has not tried. Not categorized but new andenjoyable services used by members in the interest profile can beoffered to clients as well.

[0059]FIG. 13 demonstrates a method of offering categories and servicesbased on an interest profile. In step 192 the client connects to theservice provider. In step 194, the client interest categories 58 of FIG.4 of the client database 28A of FIG. 4 is retrieved. In step 196, if thecategory weight change Boolean 70 of FIG. 4 is TRUE, in step 198 theserver interest profile database 32 of FIG. 1 is updated to identify theclient with the closest interest profiles on the server. In step 200, ifthere is a request for a new category, then in step 202 the client sendspreviously rejected categories 82 of FIG. 4. In step 204 the client issent an ordered list of not rejected, most used and enjoyed categorieswithin his interest profile database 32 of FIG. 1. If the clientexplicitly rejects a category in step 204, then in step 206 this isrecorded in his local client database 28A of FIG. 1. In step 210 theclient adds any categories he would like to try. Likewise, specificservices can be offered to a client based on other clients within hisinterest profile database 32 of FIG. 1. This offers the client a simpleand effective method of acquiring new information and categories ofinterest.

[0060] Thus, a method using machine based intelligence to shareinformation and interests over a network of computers has beendescribed. The method includes client databases of interests andinformation and processing of that data. The benefits includeinformation retrieval specific to a clients needs, reduced traffic andCPU time for searching databases, client information stored on clientmachines reducing nonvolatile disk memory requirements on the server,client preprocessing on client machines reducing the cost of analyzingand distributing information on the server and interactive usefulinformation storage in locations where intelligence exists to distributethat information.

[0061] While the invention has been illustrated in connection with apreferred embodiment, it should be understood that many variations willoccur to those of ordinary skill in the art, and that the scope of theinvention is defined only by the claims appended hereto and equivalent.

OTHER EMBODIMENTS Client Information Sharing Without aServer—Description

[0062]FIG. 14 shows an alternate network structure of the invention.This consists of a set of clients who will share information over acommunications link 12A without a server. There is a client database 14Bcontaining a client index of interest categories and associated categorychoice information. There is a unique client database 14B on eachclient. There is a client shared database containing a complete set ofinterest categories in the form of a complete category database 18A. Thedatabase can be mirrored on several clients and can be distributed overa number of clients. At least one full copy of the database should beaccessible to all other clients at all times. The interest categoryclient database 14B is a subset of the complete category database 18A.Information database 20A is shared by all clients and consists ofinformation or pointers to information for each category stored incomplete category database 18A. Information database 20A can be mirroredand distributed across a number of clients. One full copy should beaccessible at all times. The interest profile database 32A and clientdatabase enhancement list 30A is likewise a shared client database andcan be mirrored and distributed. One full copy should be accessible atall times.

[0063] Processing formally done by the server is now done by each clientusing the shared complete category database 18A and the sharedinformation database 20A.

Client Information Sharing Without a Server—Operation

[0064] The networked information sharing model is shown in FIG. 5.Objects described in FIGS. 14, 2 and 4 will be referenced in thisdiscussion. Referring to FIG. 5, in step 84 the shared informationdatabase 20A of FIG. 14 and the shared complete category database 18A ofFIG. 14 are populated with information and cross references to thatinformation. In step 86 client interest categories 82 of FIG. 4, whichtogether are one profile, are assigned to each client; this profile ofcategories is matched to one or more generic profiles in shared interestprofile database 32A of FIG. 14. In step 88 clients are watched by theclient machine; referring to FIG. 4, information on server destinations78, information items 74 and categories chosen 76 are recorded on theclient database 14A in the Information Units Accessed 58 table. In step90 information and destinations accessed by the client are recorded withusefulness weights 46 of FIG. 2 and access counts 48 of FIG. 2 withineach information unit on the server in shared complete category database18A of FIG. 14. In step 92 the clients interest category profileassignments in shared interest profile database 32A of FIG. 14 areupdated according to the current category profile information recordedin step 88. The client requests specific pieces of information, serveror database destinations and new categories in step 94; with the sharedinterest profile database 32A of FIG. 14 updated in step 92 and theanalysis done in step 90, data is returned to the client.

[0065] Actions taken by the server in the preferred embodiment are nowimplemented by the client.

CONCLUSIONS, RAMIFICATIONS, AND SCOPE

[0066] Accordingly, it can be seen that a networked information sharingsystem can intelligently distribute and gather information for a groupof clients. Clients have a wide range of interests and skill levels. Bydividing clients into category profiles and dynamically matching clientsto sources of information, high quality information sharing is achieved.An intelligent means of information sharing can grow the skills,productivity and personal interests of clients. In addition, byfiltering less useful information and obviating slow and massivesearches, the percentage of useful information flowing across thebandwidth of the network increases. By offering information to theclient rather than necessitating the client to search for himself,clients without computer expertise can enjoy and benefit from theadvantages of information distributed across a disperse network ofservers.

[0067] Although the description above contains many specificities, theseshould not be construed as limiting the scope of the invention but asmerely providing illustrations of some of the presently preferredembodiments of this invention. Various other embodiments andramifications are possible within it's scope.

[0068] Thus the scope of the invention should be determined by theappended claims and their legal equivalents, rather than by the examplesgiven.

What is claimed is:
 1. A method for sharing information on a network of computers which are interconnected by communication hardware and software comprising: information units to be shared; clients which use said network of computers to offer and/or access said information units; a shared database containing shared information units; dynamically weighting means for said information units according to the utility of said information units to said clients; offering means by said client of information units to said shared database containing shared information units; offering means to said clients of said information units from said shared database based on the weight of said information units; whereby clients can obtain information of utility without searching through databases of information lacking utility.
 2. The method of claim 1 whereby shared databases are located on the server and databases pertaining to the client only are located on the client.
 3. The method of claim 1 further including a set of interest categories maintained per client which is a subset of a shared interest categories database, said information units being assigned to said shared information categories, whereby said accessing means and offering means of assigned information units occurs after the category has been selected.
 4. The method of claim 3 further including a shared interest profile database whereby clients have client identifiers whereby profile client identifier means exist whereby client identifiers are assigned to said interest profiles according to the closest match to their individual set of interest categories.
 5. The method of claim 4 further including a category profile offering means of new categories to clients based on the use and utility of other categories used by different clients in the same interest profile.
 6. The method of claim 4 further including an information units profile offering means of new information units to clients based on the use and utility of other information units used by different clients in the same interest profile.
 7. The method of claim 3 further including a category utility weight which indicates the use and utility of a given category and is dynamically updated with use and lack of use.
 8. The method of claim 7 further including a category removal means whereby categories of little use are remove from the client said set of information categories.
 9. The method of claim 1 wherein said weighting means is determined by the number of accesses by clients and feedback from client utility ratings.
 10. The method of claim 1 further including a shared client enhancement list database which maintains a list of clients and a weight designating the amount of useful information units offered to said shared database of information units.
 11. The method of claim 10 further including a server time-slice allocation means based on said shared enhancement list database weight for that client and the processing bandwidth available on the server.
 12. The method of claim 10 further including a posting requests means whereby a server database can be accessed directly by a client or a client can post a request for an information unit within the database, whereby a client which supplies useful information units to posted requests gains a higher weight in said shared enhancement list.
 13. The method of claim 10 further including an information acceptance means whereby weights in said shared enhancement list database are used to determine whether an information unit offered by the client will be stored on said shared database of information units and if so, what initial weight will be given to the offered information unit.
 14. The method of claim 1 further including an information units accessed database per client which will be dynamically updated as clients access new said information units, with a method to attach to that new said information unit, whereby said information units accessed database will be used to add information to said shared database of information units.
 15. The method of claim 1 whereby information units are assigned said client identifier which identifies the client who offered the information.
 16. The method of claim 15 further including a preferred information client identifiers list per client whereby a preferred client access means is used to access information from said shared database of information units based on clients which previously have supplied information units of utility.
 17. The method of claim 15 further including a not preferred information client identifiers list per client whereby a not preferred client access means is used to access information from said shared database of information units based on clients which previously have supplied information units without utility.
 18. The method of claim 1 whereby shared databases are distributed across one or more clients and databases pertaining to the client only are located on the client.
 19. The method of claim 18 further including client only processing means whereby processing involving interactive access to a shared database is accomplished by any client and processing pertaining to the client only is completed by the client.
 20. The method of claim 2 further including client-server processing means whereby processing involving interactive access to a shared database is completed by the server and processing pertaining to the client only is completed by the client. 